/* 封装axios用于发送请求 */
import axios from 'axios'
import { Toast } from 'vant'
// 创建一个 axios 实例
const request = axios.create({
  // 基地址
  baseURL: 'http://interview-api-t.itheima.net/h5/',
  timeout: 5000 // 请求过时时间
})

// 添加请求拦截器
request.interceptors.request.use(function (config) {
  return config // 一定要把请求配置对象给 return 出去
}, function (error) { // 如果请求失败了
  return Promise.reject(error) // 返回失败的 Promise 实例对象
})

// 添加响应拦截器
request.interceptors.response.use(function (response) {
  // 返回 response.data 数据
  return response.data
}, function (error) { // 如果请求失败了
  if (error.response) { // 如果 response 存在
    Toast(error.response.data.message) // 通过 Toast 轻提示 提示给用户
  }
  return Promise.reject(error) // 返回失败的 Promise 实例对象
})

export default request // 将 request 暴露出去
